package cn.learn.util;

/**
 * 枚举系统初始化常量参数
 * @author huangyezhan
 * @date 2020年02月17日15:09
 */
public enum InitialCapacityEnum {
    /**
     * 初始化map的容量，HashMap(int initialCapacity)初始化；initialCapacity =（需要存储的元素个数/负载因子）+ 1。
     * 负载因子（即loader factor）默认为0.75，如果暂时无法确定初始值大小，请设置为16（即默认值）
     * HashMap在我们存放的数据大于初始化容量*负载因子（默认0.75）时就会自动扩容，自动扩容是非常消耗性能的。因为元素要重新hash分配。
     *
     */
    MAP16(16),
    MAP32(32),
    MAP64(64),
    ;

    private int capacity;

    InitialCapacityEnum(int capacity) {
        this.capacity = capacity;
    }

    public int getCapacity() {
        return capacity;
    }


}
